﻿using System;
using UnityEngine;

// Token: 0x0200025C RID: 604
public class BustSoft
{
	// Token: 0x06000E31 RID: 3633 RVA: 0x0006435C File Offset: 0x0006255C
	public BustSoft(global::CharFemale _female)
	{
		this.female = _female;
		if (this.female)
		{
			this.customInfo = this.female.femaleCustomInfo;
		}
	}

	// Token: 0x06000E32 RID: 3634 RVA: 0x00064404 File Offset: 0x00062604
	public virtual void Change(float soft, int[] changePtn)
	{
		if (null == this.female)
		{
			return;
		}
		if (this.customInfo == null)
		{
			return;
		}
		this.customInfo.bustSoftness = soft;
		this.ReCalc(changePtn);
	}

	// Token: 0x06000E33 RID: 3635 RVA: 0x00064438 File Offset: 0x00062638
	public virtual void ReCalc(int[] changePtn)
	{
		BustSoftEx.ReCalcEx(this, changePtn);
	}

	// Token: 0x06000E34 RID: 3636 RVA: 0x0006444C File Offset: 0x0006264C
	public virtual float TreeLerp(float[] vals, float rate)
	{
		if (rate < 0.5f)
		{
			return Mathf.Lerp(vals[0], vals[1], rate * 2f);
		}
		return Mathf.Lerp(vals[1], vals[2], (rate - 0.5f) * 2f);
	}

	// Token: 0x04000F19 RID: 3865
	protected global::CharFemale female;

	// Token: 0x04000F1A RID: 3866
	protected global::CharFileInfoCustomFemale customInfo;

	// Token: 0x04000F1B RID: 3867
	protected float[] bustDamping = new float[]
	{
		0.2f,
		0.1f,
		0.1f
	};

	// Token: 0x04000F1C RID: 3868
	protected float[] bustElasticity = new float[]
	{
		0.2f,
		0.15f,
		0.05f
	};

	// Token: 0x04000F1D RID: 3869
	protected float[] bustStiffness = new float[]
	{
		1f,
		0.1f,
		0.01f
	};

	// Token: 0x04000F1E RID: 3870
	static int WIDESLIDER_060;
}
